package com.strato.quartz.v1_0_0.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface QuartzJob {
	
	public static int MISFIRE_POLICY_FIRE_AND_PROCEED=1;
	public static int MISFIRE_POLICY_IGNORE_MISFIRES=2;
	public static int MISFIRE_POLICY_DO_NOTHING=3;

	public String name();
	
	public String scheduler();

	public String cron();
	
	public int version() default -1;
	
	public int misfirePolicy() default MISFIRE_POLICY_FIRE_AND_PROCEED;
}
